﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SuperFrame.Charts.Modes
{
    /// <summary>
    /// 三相电压电流相许图数据实体
    /// </summary>
    public class PhaseInfoMode : INotifyPropertyChanged
    {
        /// <summary>
        /// A相电压相角
        /// </summary>
        private double aVoltageAngle;

        public double AVoltageAngle
        {
            get { return aVoltageAngle; }
            set
            {
                aVoltageAngle = value;
                RegistPropertyChanged("AVoltageAngle");
            }
        }
        /// <summary>
        /// B相电压相角
        /// </summary>
        private double bVoltageAngle;

        public double BVoltageAngle
        {
            get { return bVoltageAngle; }
            set
            {
                bVoltageAngle = value;
                RegistPropertyChanged("BVoltageAngle");
            }
        }

        /// <summary>
        /// C相电压相角
        /// </summary>
        private double cVoltageAngle;

        public double CVoltageAngle
        {
            get { return cVoltageAngle; }
            set
            {
                cVoltageAngle = value;
                RegistPropertyChanged("CVoltageAngle");
            }
        }


        /// <summary>
        /// A相电流相角
        /// </summary>
        private double aCurrentAngle;

        public double ACurrentAngle
        {
            get { return aCurrentAngle; }
            set
            {
                aCurrentAngle = value;
                RegistPropertyChanged("ACurrentAngle");
            }
        }
        /// <summary>
        /// B相电流相角
        /// </summary>
        private double bCurrentAngle;

        public double BCurrentAngle
        {
            get { return bCurrentAngle; }
            set
            {
                bCurrentAngle = value;
                RegistPropertyChanged("BCurrentAngle");
            }
        }
        /// <summary>
        /// C相电流相角
        /// </summary>
        private double cCurrentAngle;

        public double CCurrentAngle
        {
            get { return cCurrentAngle; }
            set
            {
                cCurrentAngle = value;
                RegistPropertyChanged("CCurrentAngle");
            }
        }

        /// <summary>
        /// A相电压幅值
        /// </summary>
        private double aVoltageValue;

        public double AVoltageValue
        {
            get { return aVoltageValue; }
            set { aVoltageValue = value; RegistPropertyChanged("AVoltageValue"); }
        }
        /// <summary>
        /// B相电压幅值
        /// </summary>
        private double bVoltageValue;

        public double BVoltageValue
        {
            get { return bVoltageValue; }
            set { bVoltageValue = value; RegistPropertyChanged("BVoltageValue"); }
        }
        /// <summary>
        /// C相电压幅值
        /// </summary>
        private double cVoltageValue;

        public double CVoltageValue
        {
            get { return cVoltageValue; }
            set { cVoltageValue = value; RegistPropertyChanged("CVoltageValue"); }
        }

        /// <summary>
        /// A相电流幅值
        /// </summary>
        private double aCurrentValue;

        public double ACurrentValue
        {
            get { return aCurrentValue; }
            set { aCurrentValue = value; RegistPropertyChanged("ACurrentValue"); }
        }
        /// <summary>
        /// B相电流幅值
        /// </summary>
        private double bCurrentValue;

        public double BCurrentValue
        {
            get { return bCurrentValue; }
            set { bCurrentValue = value; RegistPropertyChanged("BCurrentValue"); }
        }
        /// <summary>
        /// C相电流幅值
        /// </summary>
        private double cCurrentValue;

        public double CCurrentValue
        {
            get { return cCurrentValue; }
            set { cCurrentValue = value; RegistPropertyChanged("CCurrentValue"); }
        }


        /// <summary>
        /// 通讯状态 0 正常  1异常
        /// </summary>
        private int stateValue=0;

        public int StateValue
        {
            get { return stateValue; }
            set { stateValue = value; RegistPropertyChanged("StateValue"); }
        }
        /// <summary>
        /// 时间
        /// </summary>
        private string timeValue;

        public string TimeValue
        {
            get { return timeValue; }
            set { timeValue = value; RegistPropertyChanged("TimeValue"); }
        }

        public event PropertyChangedEventHandler PropertyChanged;

        public void RegistPropertyChanged(string propertyName)
        {
            if (PropertyChanged != null)
            {
                PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
            }
        }
    }
}
